This disclosure relates to providing news feeds by social networking systems to a client device in general, and in particular to transmitting content of news feed stories by a social networking system to a client device in advance of receiving a request for news feed stories from the client device.
A social networking system has access to large amounts of information describing actions performed by users that may be interesting to other users of the social networking system. Users are often interested in learning about actions performed by other users connected to the user in the social networking system. These actions include photo and video uploads, status updates, transactions, wall posts, posting of comments, recommendations, likes indicated on other users' photos, videos, and the like. The social networking system stores other types of information that is likely to be of interest to the user, for example, activities related to social groups or events represented in the social networking system. The social networking system presents social information as news feed stories, also referred to herein as stories.
Stories are ranked by the social networking system in order of relevance or interest to a user. In response to a user requesting stories from the social networking system, the social networking system provides stories for presentation via a client device of the user. Users are increasingly accessing social networking systems using mobile client devices, for example, smart phones. Such devices often have memory and bandwidth constraints. For example, a mobile device may have good network bandwidth in certain locations and poor bandwidth in other locations. Furthermore, a mobile device may have multiple applications executing at any given time, thereby leaving a limited amount of memory for storing information received from the social networking system. Due to such memory and bandwidth constraints of these client devices, interactions of users with the social networking systems via these client devices are often poor. For example, users are required to wait for their stories to be retrieved from the social networking system. As a result, conventional techniques often provide poor user experiences to users attempting to interact with news feed stories using their client devices.